概要
Julia は2018年にバージョン1が公開されたオープンソースの科学技術計算言語で、 Fortranの様に高速でかつPythonの様に生産性の高い言語である [リンク]。 Julia は様々な分野において活用が始まっている。 本研究会では、主に基礎科学においてのJulia の使用例などを議論する。 また可視化、高速計算、微分方程式の数値解法、統計・機械学習分野への応用例や実装例、パッケージ開発も議論の対象とする。 研究機関に所属する研究者だけでなく産業界での研究者、学生などの積極的な参加を歓迎する。
日時
2023/7/10(月), 11(火), 12(水)
7/10(月) | 7/11(火) | 7/12(水) | |
---|---|---|---|
10:00 - 10:50 | - | 横山俊一 | 品岡寛 |
10:50 - 11:10 | - | 休憩 | 休憩 |
11:10 - 12:00 | - | 堀川由人 | 富谷昭夫 |
12:00 - 13:30 | - | 昼休憩 | 昼休憩 |
13:30 - 14:20 | チュートリアル | 永井佑紀 | 全体総括 |
14:20 - 14:40 | 休憩 | 休憩 | 休憩 |
14:40 - 15:30 | チュートリアル | 降籏大介 | 自由討論* |
15:30 - 15:50 | 休憩 | ライトニングトーク | |
15:50 - 16:40 | チュートリアル | ポスター* | 自由討論* |
16:40 - 17:00 | 休憩 | ポスター* | 自由討論* |
17:00 - 17:50 | 自由討論* | ポスター* | |
懇親会* |
場所
九州大学伊都キャンパス マス・フォア・インダストリ研究所(ウエスト1号館)
IMIオーディトリアム(D-413) アクセスマップ
スケジュールの*印以外、原則ハイブリッド開催の予定です。 *は現地のみの予定です。
重要な日時
- 6/16 ポスター発表参加登録締切
- 7/10: 研究会当日
プログラム
招待講演者による講演のほか、ポスター講演も募集予定です。 入門的なチュートリアル講演も予定されています。 詳細は追ってホームページ上で連絡します。
チュートリアル講演
Julia 入門
- 講演者
- 後藤俊介 (来栖川電算) “実践Julia入門” 技術評論社
- 寺崎敏志 (AtelierArith)
- 講演時間: 7/10(月)
- インストールと基本的な使い方 (13:30 - 14:20)
- 型と多重ディスパッチ (14:40 - 15:30)
- スレッド並列の基礎 (15:50 - 16:40)
-
概要: ライトユースにも使いたい、けれどもそれで高速性を犠牲にしたくない。総合的に開発できるものにしたい。超初心者にも習得は容易でありながら、ハッカーの満足にも応えられるものがほしい。」そういった願いからプログラミング言語 Julia が誕生しました。直近では v1.9 がリリースされ、長年課題であったパッケージの読み込み時間の短縮など、開発体験の改善が行われました。さらに和書の入門書も充実してきており、学習を始めるには絶好のタイミングといえるでしょう。本チュートリアル講演では Julia の入門として 1. インストールと基本的な使い方, 2. 型と多重ディスパッチ, 3. スレッド並列の基礎 の 3 つのトピックを解説します。この機会に Julia に入門し、新しい体験を始めてみませんか。
- 1. インストールと基本的な使い方 スライド資料
- 2. 型と多重ディスパッチ 講演資料(スライド)(Pluto ノートブック)
- 3. スレッド並列の基礎 講演資料(スライド)(Pluto ノートブック)
- 講演動画1 (Youtube, 期間限定)
- 講演動画2 (Youtube, 期間限定)
- 講演動画3 (Youtube, 期間限定)
招待講演
BasicBSpline.jl で始める B-spline
- 講演者: 堀川由人(大阪大学)
- 講演時間: 7/11(火) 11:10 - 12:00
- B-splineは滑らかさを保証した区分多項式を作るための道具であり、幾何形状表現や数値解析など広範な分野で活用されている。JuliaにおけるB-splineのパッケージは幾つか存在するが、その中でもBasicBSpline.jlを本講演では扱う。BasicBSpline.jlパッケージの使用方法を交えながらB-splineに関する理論を解説し、その応用例についても触れる。
- 講演資料(スライド)
- 講演動画(Youtube, 期間限定)
応用数学の概念を用いた物理モデルをいかに Julia でプログラミングを行うか
- 講演者: 降籏大介(大阪大学)
- 講演時間: 7/11(火) 14:40 - 15:30
- 物理上の相分離現象に対するモデル方程式としては Cahn-Hilliard方程式が有名かつ有用だが,この数値解析は計算量的に高コストである.そこでこの現象のごく初期過程を除いて状況を記述するようなシンプルなモデルを考案したい. この際,流体的挙動を模するために空間の Voronoi分割という応用数学的手法をモデルに取り入れるのだが,これまでのコンピュータ言語ではこうしたモデルの数値解析にはそれなりに苦労する面が多々あったのが現状である.これに対し,Julia を用いると比較的容易に数値解析が行えることを示すことで,微分方程式の数値解析に対してJuliaがどのように用いられるかを紹介したい.
- 講演資料(スライド)
- 講演動画(Youtube, 期間限定)
Juliaと量子多体計算:スパースモデリングからQuantics Tensor Trainまで
- 講演者: 品岡寛(埼玉大学)
- 講演時間: 7/12(水) 10:00 - 10:50
- 本講演では、Juliaを用いた情報圧縮技術の量子多体計算への応用を紹介する。 前半では、虚時間グリーン関数の「スパースモデリング」技術 [1]を実装したSparseIR.jl [2] を紹介する。本ライブラリでは、疑似四倍精度浮動小数点演算による特異値分解を活用し、悪条件の積分方程式を解くことで、虚時間グリーン関数の最適な正規直交基底を構成する。これにより、虚時間形式に基づく場の量子論計算を大幅に高速化することができる [2]。後半では、桁違いに異なる複数の長さスケールが共存する関数を圧縮可能なquantics (quantized) tensor train (QTT) [3]を紹介する。近年、QTTは、流体力学[4]や量子多体計算[5]など、物理学の様々な分野で応用されている。テンソルネットワーク、QTTを解説した後、品岡等が開発する実験的なライブラリのデモンストレーションを行う。このライブラリを用いていることで、QTTによって圧縮されたデータのフーリエ変換、畳み込みなどの演算が簡便に行える。量子物理学を超えた将来の応用についても議論したい。
[1] H. Shinaoka, J. Otsuki, M. Ohzeki, K. Yoshimi, PRB 96, 035147 (2017); H. Shinaoka et al., SciPost Physics Lecture Notes, 063 (2022). [2] M. Wallerberger, S. Badr, …, H. Shinaoka, SoftwareX 21, 101266 (2023). [3] I. V. Oseledets, Doklady Math. 80, 653 (2009); B. N. Khoromskij, Constr. Approx. 34, 257 (2011). [4] N. Gourianov et al., Nat. Comput. Sci. 2, 30 (2022). [5] H. Shinaoka et al., Physical Review X 13, 021015 (2023).
口頭発表
数論における Julia の援用
- 講演者: 横山俊一 (東京都立大学)
- 講演時間: 7/11(火) 10:00 - 10:50
- Julia 言語は現在急速に普及しているが、数学分野においては比較的幾何学・解析学の分野においての活用例が多く、代数学の分野においてはまだまだ少ないのが現状である。しかしながら近年では AbstractAlgebra.jl などに代表される、非常に汎用性の高いパッケージが充実してきている。本講演では代数系分野における Julia 活用の可能性について触れた後、とくに数論における Julia native の数式処理システム開発プロジェクト NemoCas / OSCAR について紹介する。
- スライド資料
- 講演動画(Youtube, 期間限定)
Juliaによる科学技術計算:大規模並列計算について
- 講演者: 永井佑紀 (日本原子力研究開発機構) “1週間で学べる! Julia数値計算プログラミング” 講談社
- 講演時間: 7/11(火) 13:30 - 14:20
- 概要: Juliaを使った科学技術計算の方法について具体例を交えながら解説を行う。特に、現在Fortranを用いて数値計算を行ってきている方がJuliaに期待しているであろう点について言及する予定である。Fortranは、高速でありかつスーパーコンピュータ上での大規模並列計算が可能である。一方で、機械学習に関するパッケージはほとんどなく、Fortran使用者にとって、既存の数値計算と機械学習を組み合わせるのは非常に難しい。そこで、Juliaである。Juliaは高速で動作し、MPI並列計算もFortran(と同程度かそれ以上に楽に)実装できる。そして、最新の機械学習アルゴリズムを簡単に実装できる。本講演では、Juliaによる大規模並列計算の方法と、機械学習の方法について述べる予定である。
- スライド資料
- 講演動画(Youtube, 期間限定)
素粒子物理におけるJuliaの活用~格子QCDの大規模計算に向けて~
- 講演者: 富谷昭夫 (大阪国際工科専門職大学)
- 講演時間: 7/12(水) 11:10 - 12:00
- 概要: 格子QCDの数値計算周りの話とJulia の利用について話します。
- 講演資料(スライド)
- 講演動画(Youtube, 期間限定)
ポスター講演募集(終了しました)
ポスター講演を募集いたします。 分野は問わず、一部にでもJulia(可視化や解析等)を使っている方であれば誰でもウェルカムです。パッケージ等の作成でも良いです(例: Juliaを使った開発でも可)。必ずしも新規の研究成果は求めません。ただし会場のキャパシティの問題もあるので、想定する人数を超えた場合、世話人により選考を行います。 外部資金を持たない方(学生等)は旅費の補助が可能(人数の制限あり)です。
ポスターアブストラクト
-
吉井真央 (東京大学大学院工学系研究科物理工学専攻)
タイトル:Mint.jlの実装
概要:PythonやC++などの言語と異なり自動的にmodを取って計算するmintは現在juliaに実装されていない。そこで発表者はModInt.jlを開発し、その仕様と使用例について紹介する。 -
大野 周平 (横浜市大D1, 理研JRA)
タイトル:少数多体系物理におけるJuliaの活用
概要:発表者は横浜市立大学・量子物理化学研究室と理化学研究所・少数多体系物理研究室の両研究室に所属し, 少数多体系物理学の観点から分子を対象とした共同研究を遂行している. 我々の計算では, 一般化固有値問題を解くために標準ライブラリであるLinearAlgebra.jlを用いており, 変分パラメータの最適化にOptim.jl, 可視化にPlots.jlを用いている. その他にも, 過去に開発されたFortranのプログラムを呼び出すためのインターフェースを実装, 運用するなど, 様々な場面でJuliaを活用している. 当日は主に発表者が卒業論文および修士論文においてJuliaを活用した事例について発表する. その他, 時間の許す範囲で修士課程在籍時に執筆したJuliaに関連する記事や, 博士論文の執筆に向けて開発を進めているパッケージについて議論する. -
金丸仁明 (東京大学)
タイトル:小惑星の力学・熱物理シミュレータ「Astroshaper」の開発
概要:我々は、小惑星の力学や熱物理を取り扱うための数値シミュレーション「Astroshaper」を開発している(https://github.com/Astroshaper)。 開発にはJulia言語を用いて、小惑星の軌道計算、熱物理シミュレーション、重力場計算を行うためのパッケージ群を提供している。例えば、小惑星の熱物理シミュレーションは、小惑星表面の温度分布を計算することで、小惑星探査の観測条件の検討などに用いられている。将来的には、小惑星の熱放射によって生じる摂動を考慮した軌道計算といった連成問題を解けるようにすることを目指している。 -
安達佳亮(茨城大学大学院理工学研究科量子線科学専攻)
タイトル:トポロジカル不変量の数値計算パッケージの開発
概要:物質の相を特徴づける量の一つにトポロジカル不変量がある。我々はその様々なトポロジカル不変量の数値計算パッケージの開発を進めている。今回はその一つであるBerry位相やChern数などをハミルトニアンから計算するためのパッケージの開発について発表する。 -
菅原宏治(東京都立大学システムデザイン学部)
タイトル:拡張KronigPennyハミルトニアンを計算するパッケージの開発
概要:1次元KronigPennyモデルのハミルトニアン行列を計算するパッケージを開発公開した。Pluto notebook 上のアニメーションを用いて、井戸/障壁幅比と障壁高さの変化に伴う量子準位の変化を直感的に観察できる。https://juliapackages.com/p/extendedkronigpennymatrix -
金賀 穂(千葉大学大学院融合理工学府)
タイトル:グラフェンにおける二色レーザーによるDC電流の制御
概要:固体における非線形光学応答が注目を集めている。例えば、電子系(グラフェンや半導体・モット絶縁体など)やスピン系(反強磁性体・スピン鎖・キタエフ磁性体など)における高次高調波発生(HHG)が精力的に研究されている。HHGを始めとする非線形光学応答の性質は結晶の対称性に大きく左右され、特に空間反転対称性を持つ系では偶数次高調波とDC電流の発生が禁止される。空間反転対称な系において偶数次高調波やDC電流を生成するには何らかの外因的な要素によって動的対称性を破る必要がある。この外因要素を導入することは、最初から空間反転対称性の破れた系を考えるより手の込んだセットアップを要するが、一方、物質を変えることなく偶数次高調波の発生をコントロールできるという利点をもたらす。 反転対称性で禁止された応答を発現させるための有望な「外因的な要素」として、(i)DC電流の印加、あるいは、(ii)2色レーザーの印加が考えられる。最近、我々は(i)に関連する偶数次高調波発生の数値解析を行った。本発表は(ii)の状況において発生するDC電流に焦点を当てる。 以上の背景に基づき、我々は、広いパラメータ領域における2色レーザー誘起光電流を定量的に解析することを目標として、グラフェンにおける2色レーザー光電流を解析した。Julia言語と量子マスター方程式に基づく数値解析から、現実の系で不可避である散逸の効果も取り込んで光電流を定量的に評価した。本講演では、この光電流のレーザー強度・レーザー周波数・偏光度依存性について報告する予定である。 -
田中美帆 (茨城大学)
タイトル:Juliaに基づく散逸ラッシュバ電子系における円偏光誘起磁化の数値解析
概要:本研究では、典型的な固体系のフロケ・エンジニアリングの1つである金属系における逆ファラデー効果(IFE)、つまり円偏光による励起磁化に焦点を当てる。散逸効果を取り込んだ量子マスター(GKSL)方程式に基づき、2次元ラシュバ電子モデルにおけるIFEを分析する。(i)円偏光レーザーの連続照射によって生成される非平衡定常状態での磁化、および、(ii)円偏光レーザーパルスによる非平衡磁化ダイナミクスの2つの現象に焦点を当て、数値解析と理論解析の両面の研究結果を報告する予定である。 -
佐藤宏季 (名古屋大学大学院 理学研究科)
タイトル:3次元波数空間におけるワイル点の探索方法
概要:波数空間におけるワイル点は、仮想的に磁気単極子とみなすことができる。磁気単極子の位置と、それが持つ磁荷の値は、ホール伝導度など実際の物理現象に対して重要な役割をはたすため、磁気単極子の位置と磁荷を同定することは重要である。本研究では、その探索方法をJulia言語を用いて作成する。
参加登録
- 懇親会受付は終了しました。
- 申し込みフォーム
※ ポスター発表を申し込まれた方も、別途参加登録が必要です。
※ 予定人数に達し次第、申し込みを締め切らせていただくことがあります。
リンク
主催: 九州大学マス・フォア・インダストリ研究所
共催: 科学研究費補助金学術変革領域研究(A)「学習物理学の創成」
科研基盤研究(C)「Julia言語を用いた新しい計算機数論システムの開発とその応用」
本研究会は2023年度IMI共同利用研究 カテゴリー「数学と物理におけるJuliaの活用」(2023a015)の支援を受けた。
- 世話人: 富谷昭夫 (大阪国際工科専門職大学) 横山俊一 (東京都立大学) 永井佑紀 (日本原子力研究開発機構) 寺崎敏志 (AtelierArith) (順不同)